<?php

class Application_Model_Markers extends Zend_Db_Table_Abstract
{
    protected $_name = 'marker';
    //добавление маркера
    public function addMarkers($data) {
        $this->_name = 'marker';
        $this->insert($data);
    }
    
    //добавление категории
    public function addCategory($data) {
        $this->_name = 'category_markers';
        $this->insert($data);
    }
    
    //выборка всех категорий
    public function getAllcategories() {
        $this->_name = 'category_markers';
        $select = $this->select()->from($this->_name);
        return $this->fetchAll($select);
    }
      
    //удаление выбранно категории
    public function deleteCategory($id) {
        $this->_name = 'category_markers';
        $this->delete('id ='. intval($id));
    }
    
    //редактирование категории
    public function updateCategory($id, $data) {
        $this->_name = 'category_markers';
        $this->update($data, 'id ='. intval($id));
    }
    
    //редактирование категории
    public function updateCategoryName($type, $data) {
        $this->_name = 'marker';
        $this->update($data, 'type ='. $type);
    }
    
    //получаем выбранную категорию
    public function getSelectCategory($id) {
        $this->_name = 'category_markers';
        $select = $this->select()->from($this->_name)
                                 ->where('id =?', intval($id));
        return $this->fetchRow($select)->toArray();
    }
    
    //получаем выбранную категорию
    public function getTypeCategory($id) {
        $this->_name = 'marker';
        $select = $this->select()->from($this->_name)
                                 ->where('id =?', intval($id));
        return $this->fetchRow($select);
    }
    
    //выборка всех маркеров
    public function getAllMarkers() {
        $select = $this->select()->from($this->_name);        
        return $this->fetchAll($select)->toArray();
    }
   
    //удаление выбранного маркера
    public function deleteMarker($id) {
        $this->delete('id ='. intval($id));
    }
    
    //редактирование маркера
    public function updateMarker($id, $data) {
        $this->update($data, 'id ='.intval($id));
    }
    
    //получаем выбранный маркер
    public function getSelectMarker($id) {
        $select = $this->select()->from($this->_name)
                       ->where('id =?', intval($id));
        return $this->fetchRow($select)->toArray();
    }
    
    //получаем выбранный маркер
    public function getSelectCategoryMarker($id_category) {
        $select = $this->select()->from($this->_name)
                       ->where('id_category =?', intval($id_category));
        return $this->fetchAll($select)->toArray();
    }
    
    //получение маркеров по id клиента
    public function getCategoryMarker($id_category) {
        $select = $this->select()->from($this->_name)
                       ->where('id_category =?', intval($id_category));
        return $this->fetchRow($select)->toArray();
    }
    
     //делаем выборку маркеров по категориям
    public function selectMarkers($type){
        $this->_name = 'marker';
        $select = $this->select()->from($this->_name)
                ->where('type= ?', $type);
        return $this->fetchAll($select)->toArray();
    }
    //делаем выборку иконок
    public function getCategoryIcon($name){
        $this->_name ='category_markers';
        $select = $this->select()->from($this->_name)
                ->where('name =?', $name);
        return $this->fetchAll($select)->toArray();
    }
}

